package main

// 使用深度优先遍历，修噶修改遍历顺序
func kthLargest(root *TreeNode, k int) (ans int) {
	count := k
	var dfs func(root *TreeNode)
	dfs = func(root *TreeNode) {
		// 判断结束点
		if root == nil {
			return
		}
		// 进行中序遍历，从right 到 left 理解为数组的从达到小的不断遍历操作。
		dfs(root.Right)
		if count == 0 {
			return
		}
		count--
		if count == 0 {
			ans = root.Val
		}
		//
		dfs(root.Left)
	}
	dfs(root)
	return
}

// 中序遍历的结果：
// 中序遍历的表现为，对于排序二叉树的从小到大 的遍历操作。实现节点的遍历过程。

func main() {

}
